

#ifndef HELLOWORLDAO_INTERFACE_H
#define HELLOWORLDAO_INTERFACE_H

#include <stdint.h>
#include <string>
#include "app_platform/cntl_info.h"



namespace com
{
namespace erp
{
namespace test
{
namespace ao
{

	/// 同步调用接口
	class IHelloworldAo	{
	public:
		virtual ~IHelloworldAo() {}

	public:

		/**
		 *
	 	 * say hello
		 *
		 *@param String NickName: 输入昵称 				
		 *@param uint32_t Age: 返回年龄信息 		
		 *
		 *@return  uint32_t : 0(成功) 其它失败
 	     *
		 */
	    virtual uint32_t SayHello(
				const CCntlInfo& rCntlInfo,

				const std::string& NickName,
				uint32_t& Age
	    	) = 0;
	};

	///异步调用接口
	class IHelloworldAoAsyc
	{
	public:
		virtual ~IHelloworldAoAsyc() {}
	public:
		virtual uint32_t SendSayHello(
				const CCntlInfo& rCntlInfo,

				const std::string& NickName
				) = 0;
		virtual uint32_t RecvSayHello(
				const CCntlInfo& rCntlInfo,

				uint32_t& Age
				) = 0;
	};
	
	
}
}
}
}

#endif /*HELLOWORLDAO_INTERFACE_H*/
